#ifndef __DAEMON_PROCESS_H
#define __DAEMON_PROCESS_H
#include <unistd.h>
#include <sys/types.h>

typedef struct
{
    pid_t pid;     //进程的pid
    char *exec;    //设置进程要执行的命令路径
    char *argv[3]; //存储进程的参数
} DaemonProcess;


/// @brief 初始化一个子进程的相关参数 
/// @param dp 进程对象指针
/// @param part 进程对象的第2个运行参数
/// @return 成功返回0  失败返回-1
int daemon_process_init(DaemonProcess *dp, const char *part);

/// @brief 启动一个子进程
/// @param dp 进程对象指针
/// @return 成功返回0  失败返回-1
int daemon_process_start(DaemonProcess *dp);

/// @brief 停止一个子进程
/// @param dp 进程对象指针
/// @return 成功返回0  失败返回-1
int daemon_process_stop(DaemonProcess *dp);


/// @brief 释放进程对象内存
/// @param dp 
/// @return 
int daemon_process_free(DaemonProcess *dp);





#endif // !__DAEMON_PROCESS_H

